home *** CD-ROM | disk | FTP | other *** search
/ DP Tool Club 19 / CD_ASCQ_19_010295.iso / dos / prg / pas / swag / win_os2.swg / 0008_DOS in OS2.pas < prev    next >
Pascal/Delphi Source File  |  1993-11-02  |  1KB  |  53 lines

  1. {
  2. TREVOR@wordperfect.com
  3.  
  4. Below is a dinky program to start a os/2 program from a os/2 dos window.
  5. It's pretty ugly right now, but it works fairly well.  I dug this up by
  6. debugging VIEW.EXE, so there may be errors or omissions.  Anyone can have
  7. this, feel free to mutilate it in any way you wish.
  8. }
  9.  
  10. program dosstart;
  11.  
  12. var
  13.   buf   : array[0..8] of PChar;
  14.   dir,
  15.   title,
  16.   fname,
  17.   opts  : string;
  18.   i     : integer;
  19. begin
  20.   if paramcount > 0 then
  21.   begin
  22.     fillchar(buf, sizeof(buf), 0);
  23.     buf[0] := ptr(0, $20);
  24.     title  := 'Blah blah: ' + paramstr(1) + #0;   { window title }
  25.     buf[2] := @title[1];
  26.     fname  := paramstr(1);
  27.     fname  := fname + #0;
  28.     buf[3] := @fname[1];
  29.     if paramcount > 1 then
  30.     begin
  31.       opts := '';
  32.       for i := 2 to paramcount do
  33.         opts := opts + paramstr(i);
  34.       opts := opts + #0;
  35.       buf[4] := @opts[1];
  36.     end;
  37.     asm
  38.       mov ax, 6400h
  39.       mov bx, 0025h
  40.       mov cx, 636ch
  41.       mov si, offset buf
  42.       int 21h
  43.     end;
  44.   end
  45.   else
  46.   begin
  47.     writeln('USAGE:');
  48.     writeln('   DOSSTART.EXE OS2PROG [OS2PROG_OPTIONS]');
  49.     writeln;
  50.   end;
  51. end.
  52.  
  53.